/* --------------------------- (C) COPYRIGHT 2021 Fortiortech ShenZhen -----------------------------
    File Name      : GPIO.c
    Author         : Fortiortech  Appliction Team
    Version        : V1.0
    Date           : 2021-04-11
    Description    : This file contains .C file function used for Motor Control.
----------------------------------------------------------------------------------------------------  
                                       All Rights Reserved
------------------------------------------------------------------------------------------------- */
#include <MyProject.h>
/*  -------------------------------------------------------------------------------------------------
    Function Name : void GPIO_Default_Init(void)
    Description   : 为提高芯片的抗干扰能力，降低芯片功耗，请在具体项目时，将不需要用的GPIO默认都配置为输入上拉。
    Input         : 无
    Output        : 无
    -------------------------------------------------------------------------------------------------*/
void GPIO_Default_Init(void)//为提高芯片的抗干扰能力，降低芯片功耗，请在具体项目时，将不需要用的GPIO默认都配置为输入上拉。
{
    P0_OE = 0;
    P0_PU = P00 | P01 | P02  | P04 | P06 | P07; // 需确认这些端口能接受上拉
    P1_OE = 0;
    P1_PU = P10 | P12 | P13  | P15 | P16 | P17; // 需确认这些端口能接受上拉
    P2_OE = 0;
    P2_PU = P20 | P21 | P22 | P23 | P24 | P25 | P26 | P27; // 需确认这些端口能接受上拉
    P3_OE = 0;
    P3_PU = P30 | P31 | P32 | P33 | P35 | P36 | P37; // 需确认这些端口能接受上拉
    P4_OE = 0;
    P4_PU = P44 | P46 | P47;                               // P4.7只可用于输入
    P5_OE = 0;
    P5_PU = P51;                                    
}


/*  -------------------------------------------------------------------------------------------------
    Function Name : void GPIO_Init(void)
    Description   : GPIO初始化配置,可将I/O口配置成输入或输出模式，上拉还是不上拉，模拟输出还是数字输出
    Input         : 无
    Output        : 无
    -------------------------------------------------------------------------------------------------*/
void GPIO_Init(void)
{  
//  SetBit(P0_OE , P00);            
//  SetBit(P0_PU , P00);

  ClrBit(P0_OE , P07);            
  ClrBit(P0_PU , P07);	
//	GP07 = 0;	
	/*FG信号输出*/
  SetBit(P0_OE , P05);
  SetBit(P0_PU , P05);
//	GP05 = 0;
	
    
  SetBit(P0_OE , PIN3);
  SetBit(P0_PU , PIN3);
  GP03 = 0;

  
	SetBit(P5_OE , P51);
	GP51 = 1;//继电器
	
	SetBit(P4_OE , P42);
	SetBit(P4_PU , P42);
	GP42 = 0;//ERR
	
	//屏蔽掉对PWM Tim3输入的影响
	ClrBit(P0_OE , P06);        //输入使能
  ClrBit(P0_PU , P06);        //上拉电阻
	

}

void INT0_Init(void)
{
    /*EXTI Input Pin 配置 ---------------------------------------- */
    ClrBit(P0_OE , PIN0);  // config P00 as input，配置P0.0为硬件过流FO端口
    ClrBit(P0_PU , PIN0);  // 0:disable pull up, 1:enable P10 pull up

    SetReg(LVSR , EXT0CFG0 | EXT0CFG1 | EXT0CFG2 , 0x00); //外部中断0配置

    IF0	 = 0; // clear P00 interrupt flag

    // 00: rising edge interrupt，01: failing edge interrupt，1x: edge-change mode interrupt
    IT01 = 0;
    IT00 = 0;
    
    SetBit(EVT_FILT , INT0_MOE_EN); //INT0中断关闭MOE使能
    
    /*----------------------------------------------------------------------------------
    母线电流保护时间滤波宽度
    00-不滤波    
    01-6cpu clock    
    10-12cpu clock    
    11-24cpu clock
    -----------------------------------------------------------------------------------*/
    SetBit(EVT_FILT , EFDIV1);
    ClrBit(EVT_FILT , EFDIV0);
    /*---------------------------------------------------------------------------
    外部中断优先级配置及芯片中断总使能
    PX01-PX00，中断优先级控制值从0-3依次表示优先级从最低到最高，共4级优化级控制
    EX0，外部中断0使能
    EA,芯片中断总使能
    外部中断是否有滤波的配置，决定于选择硬件保护触发信号源，外部中断0或者比较器3中断。
    若选择了比较器3中断，则外部中断无法进行滤波配置
    --------------------------------------------------------------------------*/
    SetBit(IP0,PX01);
    SetBit(IP0,PX00);		// 中断优先级别3，中断优先级最高
    
    EX0 = 1;		// 使能外部中断0, POO位外部中断输入硬件
    
    EA = 1;			// 使能全局中断
}






































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































